using System;
using System.Text;

internal class ae
{
	static ae()
	{
	}

	public static bool a(string A_0, string A_1)
	{
		return a(Encoding.UTF8.GetBytes(A_0), Convert.FromBase64String(A_1));
	}

	public static bool a(byte[] A_0, byte[] A_1)
	{
		return d.a().VerifyData(A_0, "MD5", A_1);
	}

	internal static string[] a(string A_0)
	{
		return Encoding.UTF8.GetString(Convert.FromBase64String(A_0)).Split(';');
	}

	internal static DateTime a(long A_0)
	{
		return new DateTime(A_0);
	}

	internal static void b()
	{
		try
		{
			d.a().FromXmlString(x.a());
		}
		catch
		{
		}
	}

	internal static object[] a()
	{
		try
		{
			string text = x.b();
			string[] array = text.Split(new char[2] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);
			if (ak.a(array[0], array[1]))
			{
				string[] array2 = a(array[0]);
				return new object[3]
				{
					int.Parse(array2[2]),
					a(long.Parse(array2[3])),
					a(long.Parse(array2[3])) > DateTime.Now
				};
			}
			return null;
		}
		catch
		{
			return null;
		}
	}
}
